Foundations for Native C++ Styles
نویسندگان
چکیده
Over the past decade, C++ has become the most commonly used language for introducing object-oriented programming and other abstraction techniques into production software. During this period, C++ has evolved to meet the challenges of production systems. In this, C++ differs radically from languages that come primarily from academic or research environments, and from less widely used languages. Although C++ has also been extensively used in academia and for research, its evolution was driven primarily by feedback from its use in industrial applications. In this paper, we focus on three design areas key to successful C++ use. In doing so, we explore fundamental C++ concepts and facilities and present distinctive C++ design and programming styles that have evolved to cope with the stringent demands of everyday systems building. First we explore C++’s support for concrete data types and containers and give examples of how the C++ generic programming facilities, together with welldesigned libraries, can yield flexibility and economy of expression. Next we examine some uses of class hierarchies, touching on issues including encapsulation, interface design, efficiency, and maintainability. Finally, we note that languages succeed for reasons that are not entirely technical and review the background for C++’s success. This paper is not a C++ tutorial. However, it does include enough code examples and supporting commentary that readers familiar with programming languages in general but unfamiliar with C++ can grasp the key C++ language constructs and programming techniques.
منابع مشابه
The Effects of Modified Speech Styles on Intelligibility for Non-Native Listeners
Speech output, including modified and synthetic speech, is used increasingly in natural settings where message reception might be affected by noise. Recent evaluations have demonstrated the effect of different speech styles on intelligibility for native listeners, but their impact on listening in a second language is less well-understood. The current study measured the intelligibility of four s...
متن کاملDistilling Software Architectural Primitives from Architectural Styles
Architectural styles codify commonly used idioms in system structures, organizations, and interactions. Existing classifications of architectural styles provide empirical guidelines for style selection, but fail to systematically characterize styles or reveal their foundations. Moreover, the mapping between architectural styles and their implementations is generally poorly understood. This pape...
متن کاملOn the use of knowledge representation techniques for modeling software architectures
We take the position that it could prove worth to reconcile ideas of the knowledge representation and software architecture research communities. Many existing knowledge representation techniques and formalisms seem to exhibit a lot of potential for representing different aspects of software architectures. To illustrate our case, we show how the theory of conceptual graphs could be a useful can...
متن کاملIs it fair? Textual effects on the salience of moral foundations
Many of the important decisions we make have moral implications. Moral Foundations Theory (Haidt & Joseph, 2004) identifies 5 distinct styles of moral reasoning that may be applied to such decisions. This paper explores how reading text that emphasizes one of these styles might affect our reasoning. After participants read a series of tweets that emphasized the Fairness/Cheating foundation they...
متن کاملEthical Foundations and Managerial Challenges: The Strategic Implications of Moral Standards
Organizations need ethical foundations that appeal to their stakeholders. To demonstrate how such standards can be embedded in the organization, a number of classical ethical paradigms are reviewed, compared, and discussed with reference to illustrative samples of managerial styles. By doing so, the case is made that some ethical models are more appropriate than others in particular situations....
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Softw., Pract. Exper.
دوره 25 شماره
صفحات -
تاریخ انتشار 1995